Como fazer função que adiciona ou remove elemento do array ao clicar em checkbox no angular?

Adicionar e remover linha array com checkbox

Se faz uma verificação para ver se checked está true ou false e se usa length para inserir nova linha e splice para apagar.

No arquivo de html declare o input desta maneira:

<input type="checkbox" (click)="check(i)" [checked] = "row.checked === true">

O valor de row é puxado de um array com *ngFor e declarado o indice como i.

public check(i){
    if(this.array[i].checked == true){
     this.array.splice(i, 1);
     this.produtos[id].checked = false;
    }
    else{
      this.array[this.array.lenght] = '';
      this.array[id].checked = true;
    }
  }

O array é recebido por uma variável global para o objeto checked ser setado como false se ele estiver true antes, se não fica true, ou seja caso esteja false.

Para inserir a linha é informado o tamanho do array. Para ele criar a última linha, pois length mostra o tamanho do array, mas a primeira posição é zero, então o length será o mesmo da posição depois da última criada.

Quer acompanhar as novidade do site?

Leia mais em: t.stackoverflow.com/questions...

Como fazer função que adiciona ou remove elemento do array ao clicar em checkbox no angular?

Última atualização: 2023-02-15

Exemplos de uso
Quer acompanhar as novidade do site?
Veja também:

Como colocar máscara de virgula em input angular?

máscara virgula input angular

Como remover espaços em branco no php?

remover espaços php

Como usar o evento angular keyup?

Evento angular keyup

Sabe por que o Angular usar TypeScript e não JavaScript?

questão typescript angular javascript

Como centralizar botão bootstrap?

centralizar botão bootstrap

Como usar if ternario no angular?

if ternario angular

Web Stories